package com.jjsj.mall.service.impl;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jjsj.common.utils.DateUtils;
import com.jjsj.mall.entity.MallBanner;
import com.jjsj.mall.mapper.MallBannerMapper;
import com.jjsj.mall.service.IMallBannerService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 首页广告Service业务层处理
 *
 * @author JJSJ
 * @date 2022-10-03
 */
@Service
public class MallBannerServiceImpl implements IMallBannerService {
    @Autowired
    private MallBannerMapper mallBannerMapper;

    /**
     * 查询首页广告
     *
     * @param bannerId 首页广告ID
     * @return 首页广告
     */
    @Override
    public MallBanner selectMallBannerById(Long bannerId) {
        return mallBannerMapper.selectMallBannerById(bannerId);
    }

    /**
     * 查询首页广告列表
     *
     * @param mallBanner 首页广告
     * @return 首页广告
     */
    @Override
    public List<MallBanner> selectMallBannerList(MallBanner mallBanner) {
        return mallBannerMapper.selectMallBannerList(mallBanner);
    }

    /**
     * 新增首页广告
     *
     * @param mallBanner 首页广告
     * @return 结果
     */
    @Override
    public int insertMallBanner(MallBanner mallBanner) {
        mallBanner.setCreateTime(DateUtils.getNowDate());
        return mallBannerMapper.insertMallBanner(mallBanner);
    }

    /**
     * 修改首页广告
     *
     * @param mallBanner 首页广告
     * @return 结果
     */
    @Override
    public int updateMallBanner(MallBanner mallBanner) {
        mallBanner.setUpdateTime(DateUtils.getNowDate());
        return mallBannerMapper.updateMallBanner(mallBanner);
    }

    /**
     * 批量删除首页广告
     *
     * @param bannerIds 需要删除的首页广告ID
     * @return 结果
     */
    @Override
    public int deleteMallBannerByIds(Long[] bannerIds) {
        return mallBannerMapper.deleteMallBannerByIds(bannerIds);
    }

    /**
     * 删除首页广告信息
     *
     * @param bannerId 首页广告ID
     * @return 结果
     */
    @Override
    public int deleteMallBannerById(Long bannerId) {
        return mallBannerMapper.deleteMallBannerById(bannerId);
    }

    @Override
    public IPage<MallBanner> page1(Page page, MallBanner mallBanner) {
        return mallBannerMapper.selectPage1(page, mallBanner);
    }
}
